<?php	namespace Admin\Controller;
class CateController extends CommonController
{
	protected $db;
	/*
	 * 构造方法，init方法框架生成无需在parent：：__construct()
	 */
	public function __init()
	{
//		实例化模型
		$this->db = new \Common\Model\Cate;
	}
	public function index()
	{
//		获取数据表所有数据
		$TypeDate = $this->db->get();
//		转为树状，Data::tree()，第三个参数是主键，第四个参数是父级ID
		$TypeDate = Data::tree($TypeDate,'cname','cid','cfid');
//		分配页面
		View::with('TypeDate',$TypeDate);
		View::make();
	}
//	添加
	public function add()
	{
//		实例化模型Type
		$Type = new \Common\Model\Type;
//		获取给出条件的数据
		$TypeDate = $Type->lists('lid,type');
//		p($TypeDate);
		if(IS_POST)
		{
//			执行Cate模型的store方法
			if(!$this->db->store())
			{
				View::error($this->db->getError());
			}else
			{
				View::success('添加成功',U('index'));
			}
		}
//		将Type的数据分配页面
		View::with('TypeDate',$TypeDate);
		View::make();
	}
	//编辑
	public function edit()
	{
//		获取get参数
		$cid = Q('get.cid',0,'intval');
//		p($cid);
		if(IS_POST)
		{
//			执行Cate模型的edit方法
			if(!$this->db->edit())
			{
				View::error($this->db->getError());
			}else
			{
				View::success('编辑成功',U('index'));
			}
		}
//		实例化模型Type
		$CateoftypeData = new \Common\Model\Type;
//		获取Type数据
		$CateoftypeData = $CateoftypeData->lists('lid,type');
//		p($CateoftypeData);
//		获取Cate添加时cid的第一条数据
		$CateEditData = $this->db -> where('cid',$cid)->first();
//		p($CateEditData);
//		执行模型datagetson方法
		$treeCateData = $this->db->datagetson($cid);
		p($treeCateData);
//		分配数据
		View::with('treeCateData',$treeCateData);
		View::with('CateEditData',$CateEditData);
		View::with('CateoftypeData',$CateoftypeData);
		View::make();
	}
//	子类添加
	public function addSon()
	{
//		获取get参数
		$cid = Q('get.cid',0,'intval');
//		p($cid);
		if(IS_POST)
		{
//			执行模型addSon方法
			if(!$this->db->addSon()){
				View::error($this->db->getError());
			}else
			{
				View::success('子类添加成功',U('index'));
			}
		}
//		表连接oftype
		$CateaddSonData = $this->db -> where('cid',$cid)->join('oftype','lid','=','oftype_lid')->get();
//		p($CateaddSonData);
//		分配数据
		View::with('CateaddSonData',$CateaddSonData);
		View::make();
	}
	//删除
	public function del()
	{
//		获取get参数
		$cid = Q('get.cid',0,'intval');
//		执行模型del方法
		$data = $this->db->del($cid);
		View::success('删除成功',U('index'));
	}
}
